//链表的中间节点
//给定一个头结点为 head 的非空单链表，返回链表的中间结点。
//如果有两个中间结点，则返回第二个中间结点。

//思路二：快慢指针
struct ListNode* middleNode(struct ListNode* head) {
	struct ListNode* fast = head;
	struct ListNode* slow = head;
	while (fast && (fast->next)) {
		fast = fast->next->next;
		slow = slow->next;
	}
	return slow;
}